import request from '@/utils/request'

export function getFilesByIds(fileIds) {
  return request({
    url: '/file/detail',
    method: 'post',
    data: fileIds
  })
}


/**
 * 删除文件
 * @param id
 * @returns {*}
 */
export function delFile(id) {
  return request({
    url: '/file/delete/' + id,
    method: 'delete',
  })
}

/**
 * 下载文件
 * @param id
 * @returns {*}
 */
export function getFile(id) {
  return request({
    url: '/file/download/' + id,
    method: 'get',
    responseType: 'blob', // 确保返回的是二进制文件流
  })
}

/**
 * 预览公共文件
 * @param id
 * @returns {*}
 */
export function previewPublicFile(id) {
  return request({
    url: '/file/preview/public' + id,
    method: 'get',
  })
}

/**
 * 预览非公共文件
 * @param id
 * @returns {*}
 */
export function previewFile(id) {
  return request({
    url: '/file/preview/pdf/' + id,
    method: 'get',
    responseType: 'blob', // 确保返回的是二进制文件流
  })
}

/**
 * 批量上传文件
 *
 */
export function uploadFiles(files) {
  return request({
    url: '/file/upload/batch',
    method: 'post',
    data: files,
    headers: {
      'Content-Type': 'multipart/form-data'
    }
  })
}



/**
 * 上传文件
 *
 */
export function uploadFile(file) {
  return request({
    url: '/file/upload',
    method: 'post',
    data: file,
    headers: {
      'Content-Type': 'multipart/form-data'
    }
  })
}




/**
 * 富文本图片上传
 * @param {FormData} formData 包含文件的数据
 */
export function uploadEditorImgs(formData) {
  return request({
    url: '/file/upload/editor/imgs',
    method: 'post',
    data: formData,
    headers: {
      'Content-Type': 'multipart/form-data'
    }
  })
}

/**
 * 获取临时访问token
 */
export function getTempToken(ids) {
  return request({
    url: '/file/ttk/token',
    method: 'post',
    data: ids
  })
}


